package com.newtouch.bxzs.policy.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.newtouch.bxzs.common.base.model.Policy;
import com.newtouch.bxzs.policy.model.bo.PolicyListBO;
import com.newtouch.bxzs.policy.model.bo.enterprise.EnterprisePolicyBO;
import com.newtouch.bxzs.policy.model.bo.family.FamilyPolicyBO;
import com.newtouch.bxzs.policy.model.vo.PolicyVO;
import com.newtouch.bxzs.policy.model.vo.enterprise.EnterprisePolicyVO;
import com.newtouch.bxzs.policy.model.vo.family.FamilyPolicyVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 保单管理Mapper
 *
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2021/1/7 14:37</td>
 * <td>linhongxi</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author linhongxi
 * @version 1.0.0
 * @since 1.0.0
 */
@Mapper
public interface PolicyMapper extends BaseMapper<Policy> {
    /**
     * 查看根据当前用户工号，查看三方关系后得到个人保单列表
     *
     * @param policyVO
     * @return
     */
    Page<PolicyListBO> policyListBO(@Param("policyVO") PolicyVO policyVO,@Param("page") Page<PolicyListBO> page,@Param("policyType") String policyType);

    /**
     * 查看根据当前用户工号，查看三方关系后得到家庭单列表
     *
     * @param familyPolicyVO
     * @return
     */
    Page<FamilyPolicyBO> familyPolicyListBO(@Param("familyPolicyVO") FamilyPolicyVO familyPolicyVO,@Param("page") Page<FamilyPolicyBO> page,@Param("familyPolicyType") String familyPolicyType);

    /**
     * 查看根据当前用户工号，查看三方关系后得到企业单列表
     *
     * @param enterprisePolicyVO
     * @return
     */

    Page<EnterprisePolicyBO> enterprisePolicyListBO(@Param("enterprisePolicyVO") EnterprisePolicyVO enterprisePolicyVO, @Param("page") Page<EnterprisePolicyBO> page,@Param("enterPrisePolicyTypeShort") String enterPrisePolicyTypeShort,@Param("enterPrisePolicyTypeLong") String enterPrisePolicyTypeLong);

}
